package com.vlyman.weixin.xml;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;

import java.beans.PropertyDescriptor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;

/**
 * 类描述：</br>
 * 	xml报文序列化类
 * @author chenjs
 * @date: 2016年12月5日
 */
public class XmlSerializer {

	/**
	 * 方法描述：<br>
	 * 	xml序列化
	 * @author: chenjs
	 * @param entity
	 * @return
	 * @date: 2016年12月5日
	 */
	@SuppressWarnings("rawtypes")
	public static <T> String formatXML(T entity) {
		Class clazz = entity.getClass();
		Field[] fieldArr = clazz.getDeclaredFields();
		Document document = DocumentHelper.createDocument();
		Element root = document.addElement("xml");
		for (Field field : fieldArr) {
			try {
				PropertyDescriptor pd = new PropertyDescriptor(field.getName(), clazz);
				Method getMethod = pd.getReadMethod();
				Object targetObj = getMethod.invoke(entity);
			} catch (Exception e) {
				// TODO Auto-generated catch block
			}
		}
		return "";
	}
}
